Load Data

dataset <- read.delim("raw_data/Figure5H.txt", stringsAsFactors = FALSE)

dataset$genotype <- gsub("Δ","d",gsub(" ", "", dataset$genotype))
dataset$genotype <- factor(dataset$genotype)
dataset$Experiment <- factor(rep(paste0("exp", 1:(length(dataset$genotype)/length(levels(dataset$genotype)))), each=length(unique(dataset$genotype))))

dataset$BRCA <-  factor(gsub("\\+.*","",dataset$genotype))
dataset$Alc1 <-  factor(gsub(".*[T,1]\\+","",dataset$genotype))

dataset$UID <- factor(paste(dataset$Experiment, dataset$Alc1, dataset$BRCA))
dataset$GSID <- factor(paste(dataset$Alc1, dataset$BRCA))

# wide format
kable(dataset, row.names = F)
genotype NT olaparib_30nM olaparib_300nM olaparib_3000nM Experiment BRCA Alc1 UID GSID
h/d11+GFP 2850 2670 1956 1980 exp1 h/d11 GFP exp1 GFP h/d11 GFP h/d11
h/d11+GFP-ALC1 2600 2320 2150 2010 exp1 h/d11 GFP-ALC1 exp1 GFP-ALC1 h/d11 GFP-ALC1 h/d11
d11/d11+GFP 1576 1296 660 109 exp1 d11/d11 GFP exp1 GFP d11/d11 GFP d11/d11
d11/d11+GFP-ALC1 1010 880 550 360 exp1 d11/d11 GFP-ALC1 exp1 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11
h/d11+GFP 2620 2570 1675 1480 exp2 h/d11 GFP exp2 GFP h/d11 GFP h/d11
h/d11+GFP-ALC1 2450 2120 1980 1840 exp2 h/d11 GFP-ALC1 exp2 GFP-ALC1 h/d11 GFP-ALC1 h/d11
d11/d11+GFP 1740 1300 740 95 exp2 d11/d11 GFP exp2 GFP d11/d11 GFP d11/d11
d11/d11+GFP-ALC1 920 820 520 220 exp2 d11/d11 GFP-ALC1 exp2 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11
h/d11+GFP 2356 2184 1586 1148 exp3 h/d11 GFP exp3 GFP h/d11 GFP h/d11
h/d11+GFP-ALC1 2192 2066 1760 1518 exp3 h/d11 GFP-ALC1 exp3 GFP-ALC1 h/d11 GFP-ALC1 h/d11
d11/d11+GFP 840 680 440 180 exp3 d11/d11 GFP exp3 GFP d11/d11 GFP d11/d11
d11/d11+GFP-ALC1 396 356 288 140 exp3 d11/d11 GFP-ALC1 exp3 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11
h/d11+GFP 2256 2052 1552 1020 exp4 h/d11 GFP exp4 GFP h/d11 GFP h/d11
h/d11+GFP-ALC1 2260 2120 1850 1314 exp4 h/d11 GFP-ALC1 exp4 GFP-ALC1 h/d11 GFP-ALC1 h/d11
d11/d11+GFP 816 632 340 152 exp4 d11/d11 GFP exp4 GFP d11/d11 GFP d11/d11
d11/d11+GFP-ALC1 528 482 284 211 exp4 d11/d11 GFP-ALC1 exp4 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11
library(reshape2)
# reshape to long format
dataset <- melt(dataset, variable.name = "Treatment", value.name = "Counts")

dataset$Alc1 <- relevel(dataset$Alc1, ref = "GFP")
dataset$BRCA <- relevel(dataset$BRCA, ref = "h/d11")
dataset$UID <- relevel(dataset$UID, ref = "exp1 GFP h/d11")

dataset$Olaparib <- gsub("NT","1",dataset$Treatment)
dataset$Olaparib <- gsub("olaparib_|nM","",dataset$Olaparib)
dataset$Olaparib <- log10(as.integer(dataset$Olaparib))




dataset$Offset <- NA
for(uid in levels(dataset$UID)){
        dataset$Offset[dataset$UID == uid] <- mean(dataset$Counts[dataset$UID == uid])
}

dataset$NormCounts <- dataset$Counts / dataset$Offset



dataset$Offset2 <- NA
for(gsid in levels(dataset$GSID)){
        dataset$Offset2[dataset$GSID == gsid] <- mean(dataset$NormCounts[dataset$GSID == gsid & dataset$Olaparib == 0])
}

dataset$NormCounts2 <- dataset$NormCounts / dataset$Offset2



# long format
kable(dataset, row.names = F)
genotype Experiment BRCA Alc1 UID GSID Treatment Counts Olaparib Offset NormCounts Offset2 NormCounts2
h/d11+GFP exp1 h/d11 GFP exp1 GFP h/d11 GFP h/d11 NT 2850 0.000000 2364.00 1.2055838 1.267157 0.9514086
h/d11+GFP-ALC1 exp1 h/d11 GFP-ALC1 exp1 GFP-ALC1 h/d11 GFP-ALC1 h/d11 NT 2600 0.000000 2270.00 1.1453744 1.168804 0.9799541
d11/d11+GFP exp1 d11/d11 GFP exp1 GFP d11/d11 GFP d11/d11 NT 1576 0.000000 910.25 1.7313925 1.695022 1.0214570
d11/d11+GFP-ALC1 exp1 d11/d11 GFP-ALC1 exp1 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 NT 1010 0.000000 700.00 1.4428571 1.418106 1.0174538
h/d11+GFP exp2 h/d11 GFP exp2 GFP h/d11 GFP h/d11 NT 2620 0.000000 2086.25 1.2558418 1.267157 0.9910707
h/d11+GFP-ALC1 exp2 h/d11 GFP-ALC1 exp2 GFP-ALC1 h/d11 GFP-ALC1 h/d11 NT 2450 0.000000 2097.50 1.1680572 1.168804 0.9993609
d11/d11+GFP exp2 d11/d11 GFP exp2 GFP d11/d11 GFP d11/d11 NT 1740 0.000000 968.75 1.7961290 1.695022 1.0596492
d11/d11+GFP-ALC1 exp2 d11/d11 GFP-ALC1 exp2 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 NT 920 0.000000 620.00 1.4838710 1.418106 1.0463754
h/d11+GFP exp3 h/d11 GFP exp3 GFP h/d11 GFP h/d11 NT 2356 0.000000 1818.50 1.2955733 1.267157 1.0224255
h/d11+GFP-ALC1 exp3 h/d11 GFP-ALC1 exp3 GFP-ALC1 h/d11 GFP-ALC1 h/d11 NT 2192 0.000000 1884.00 1.1634820 1.168804 0.9954464
d11/d11+GFP exp3 d11/d11 GFP exp3 GFP d11/d11 GFP d11/d11 NT 840 0.000000 535.00 1.5700935 1.695022 0.9262966
d11/d11+GFP-ALC1 exp3 d11/d11 GFP-ALC1 exp3 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 NT 396 0.000000 295.00 1.3423729 1.418106 0.9465957
h/d11+GFP exp4 h/d11 GFP exp4 GFP h/d11 GFP h/d11 NT 2256 0.000000 1720.00 1.3116279 1.267157 1.0350953
h/d11+GFP-ALC1 exp4 h/d11 GFP-ALC1 exp4 GFP-ALC1 h/d11 GFP-ALC1 h/d11 NT 2260 0.000000 1886.00 1.1983033 1.168804 1.0252387
d11/d11+GFP exp4 d11/d11 GFP exp4 GFP d11/d11 GFP d11/d11 NT 816 0.000000 485.00 1.6824742 1.695022 0.9925971
d11/d11+GFP-ALC1 exp4 d11/d11 GFP-ALC1 exp4 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 NT 528 0.000000 376.25 1.4033223 1.418106 0.9895751
h/d11+GFP exp1 h/d11 GFP exp1 GFP h/d11 GFP h/d11 olaparib_30nM 2670 1.477121 2364.00 1.1294416 1.267157 0.8913196
h/d11+GFP-ALC1 exp1 h/d11 GFP-ALC1 exp1 GFP-ALC1 h/d11 GFP-ALC1 h/d11 olaparib_30nM 2320 1.477121 2270.00 1.0220264 1.168804 0.8744205
d11/d11+GFP exp1 d11/d11 GFP exp1 GFP d11/d11 GFP d11/d11 olaparib_30nM 1296 1.477121 910.25 1.4237847 1.695022 0.8399799
d11/d11+GFP-ALC1 exp1 d11/d11 GFP-ALC1 exp1 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 olaparib_30nM 880 1.477121 700.00 1.2571429 1.418106 0.8864944
h/d11+GFP exp2 h/d11 GFP exp2 GFP h/d11 GFP h/d11 olaparib_30nM 2570 1.477121 2086.25 1.2318754 1.267157 0.9721571
h/d11+GFP-ALC1 exp2 h/d11 GFP-ALC1 exp2 GFP-ALC1 h/d11 GFP-ALC1 h/d11 olaparib_30nM 2120 1.477121 2097.50 1.0107271 1.168804 0.8647531
d11/d11+GFP exp2 d11/d11 GFP exp2 GFP d11/d11 GFP d11/d11 olaparib_30nM 1300 1.477121 968.75 1.3419355 1.695022 0.7916919
d11/d11+GFP-ALC1 exp2 d11/d11 GFP-ALC1 exp2 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 olaparib_30nM 820 1.477121 620.00 1.3225806 1.418106 0.9326389
h/d11+GFP exp3 h/d11 GFP exp3 GFP h/d11 GFP h/d11 olaparib_30nM 2184 1.477121 1818.50 1.2009898 1.267157 0.9477832
h/d11+GFP-ALC1 exp3 h/d11 GFP-ALC1 exp3 GFP-ALC1 h/d11 GFP-ALC1 h/d11 olaparib_30nM 2066 1.477121 1884.00 1.0966030 1.168804 0.9382264
d11/d11+GFP exp3 d11/d11 GFP exp3 GFP d11/d11 GFP d11/d11 olaparib_30nM 680 1.477121 535.00 1.2710280 1.695022 0.7498592
d11/d11+GFP-ALC1 exp3 d11/d11 GFP-ALC1 exp3 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 olaparib_30nM 356 1.477121 295.00 1.2067797 1.418106 0.8509800
h/d11+GFP exp4 h/d11 GFP exp4 GFP h/d11 GFP h/d11 olaparib_30nM 2052 1.477121 1720.00 1.1930233 1.267157 0.9414962
h/d11+GFP-ALC1 exp4 h/d11 GFP-ALC1 exp4 GFP-ALC1 h/d11 GFP-ALC1 h/d11 olaparib_30nM 2120 1.477121 1886.00 1.1240721 1.168804 0.9617283
d11/d11+GFP exp4 d11/d11 GFP exp4 GFP d11/d11 GFP d11/d11 olaparib_30nM 632 1.477121 485.00 1.3030928 1.695022 0.7687762
d11/d11+GFP-ALC1 exp4 d11/d11 GFP-ALC1 exp4 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 olaparib_30nM 482 1.477121 376.25 1.2810631 1.418106 0.9033622
h/d11+GFP exp1 h/d11 GFP exp1 GFP h/d11 GFP h/d11 olaparib_300nM 1956 2.477121 2364.00 0.8274112 1.267157 0.6529667
h/d11+GFP-ALC1 exp1 h/d11 GFP-ALC1 exp1 GFP-ALC1 h/d11 GFP-ALC1 h/d11 olaparib_300nM 2150 2.477121 2270.00 0.9471366 1.168804 0.8103466
d11/d11+GFP exp1 d11/d11 GFP exp1 GFP d11/d11 GFP d11/d11 olaparib_300nM 660 2.477121 910.25 0.7250755 1.695022 0.4277675
d11/d11+GFP-ALC1 exp1 d11/d11 GFP-ALC1 exp1 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 olaparib_300nM 550 2.477121 700.00 0.7857143 1.418106 0.5540590
h/d11+GFP exp2 h/d11 GFP exp2 GFP h/d11 GFP h/d11 olaparib_300nM 1675 2.477121 2086.25 0.8028760 1.267157 0.6336043
h/d11+GFP-ALC1 exp2 h/d11 GFP-ALC1 exp2 GFP-ALC1 h/d11 GFP-ALC1 h/d11 olaparib_300nM 1980 2.477121 2097.50 0.9439809 1.168804 0.8076467
d11/d11+GFP exp2 d11/d11 GFP exp2 GFP d11/d11 GFP d11/d11 olaparib_300nM 740 2.477121 968.75 0.7638710 1.695022 0.4506554
d11/d11+GFP-ALC1 exp2 d11/d11 GFP-ALC1 exp2 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 olaparib_300nM 520 2.477121 620.00 0.8387097 1.418106 0.5914295
h/d11+GFP exp3 h/d11 GFP exp3 GFP h/d11 GFP h/d11 olaparib_300nM 1586 2.477121 1818.50 0.8721474 1.267157 0.6882711
h/d11+GFP-ALC1 exp3 h/d11 GFP-ALC1 exp3 GFP-ALC1 h/d11 GFP-ALC1 h/d11 olaparib_300nM 1760 2.477121 1884.00 0.9341826 1.168804 0.7992635
d11/d11+GFP exp3 d11/d11 GFP exp3 GFP d11/d11 GFP d11/d11 olaparib_300nM 440 2.477121 535.00 0.8224299 1.695022 0.4852030
d11/d11+GFP-ALC1 exp3 d11/d11 GFP-ALC1 exp3 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 olaparib_300nM 288 2.477121 295.00 0.9762712 1.418106 0.6884332
h/d11+GFP exp4 h/d11 GFP exp4 GFP h/d11 GFP h/d11 olaparib_300nM 1552 2.477121 1720.00 0.9023256 1.267157 0.7120868
h/d11+GFP-ALC1 exp4 h/d11 GFP-ALC1 exp4 GFP-ALC1 h/d11 GFP-ALC1 h/d11 olaparib_300nM 1850 2.477121 1886.00 0.9809120 1.168804 0.8392440
d11/d11+GFP exp4 d11/d11 GFP exp4 GFP d11/d11 GFP d11/d11 olaparib_300nM 340 2.477121 485.00 0.7010309 1.695022 0.4135821
d11/d11+GFP-ALC1 exp4 d11/d11 GFP-ALC1 exp4 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 olaparib_300nM 284 2.477121 376.25 0.7548173 1.418106 0.5322715
h/d11+GFP exp1 h/d11 GFP exp1 GFP h/d11 GFP h/d11 olaparib_3000nM 1980 3.477121 2364.00 0.8375635 1.267157 0.6609786
h/d11+GFP-ALC1 exp1 h/d11 GFP-ALC1 exp1 GFP-ALC1 h/d11 GFP-ALC1 h/d11 olaparib_3000nM 2010 3.477121 2270.00 0.8854626 1.168804 0.7575799
d11/d11+GFP exp1 d11/d11 GFP exp1 GFP d11/d11 GFP d11/d11 olaparib_3000nM 109 3.477121 910.25 0.1197473 1.695022 0.0706465
d11/d11+GFP-ALC1 exp1 d11/d11 GFP-ALC1 exp1 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 olaparib_3000nM 360 3.477121 700.00 0.5142857 1.418106 0.3626568
h/d11+GFP exp2 h/d11 GFP exp2 GFP h/d11 GFP h/d11 olaparib_3000nM 1480 3.477121 2086.25 0.7094068 1.267157 0.5598414
h/d11+GFP-ALC1 exp2 h/d11 GFP-ALC1 exp2 GFP-ALC1 h/d11 GFP-ALC1 h/d11 olaparib_3000nM 1840 3.477121 2097.50 0.8772348 1.168804 0.7505404
d11/d11+GFP exp2 d11/d11 GFP exp2 GFP d11/d11 GFP d11/d11 olaparib_3000nM 95 3.477121 968.75 0.0980645 1.695022 0.0578544
d11/d11+GFP-ALC1 exp2 d11/d11 GFP-ALC1 exp2 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 olaparib_3000nM 220 3.477121 620.00 0.3548387 1.418106 0.2502202
h/d11+GFP exp3 h/d11 GFP exp3 GFP h/d11 GFP h/d11 olaparib_3000nM 1148 3.477121 1818.50 0.6312895 1.267157 0.4981937
h/d11+GFP-ALC1 exp3 h/d11 GFP-ALC1 exp3 GFP-ALC1 h/d11 GFP-ALC1 h/d11 olaparib_3000nM 1518 3.477121 1884.00 0.8057325 1.168804 0.6893648
d11/d11+GFP exp3 d11/d11 GFP exp3 GFP d11/d11 GFP d11/d11 olaparib_3000nM 180 3.477121 535.00 0.3364486 1.695022 0.1984921
d11/d11+GFP-ALC1 exp3 d11/d11 GFP-ALC1 exp3 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 olaparib_3000nM 140 3.477121 295.00 0.4745763 1.418106 0.3346550
h/d11+GFP exp4 h/d11 GFP exp4 GFP h/d11 GFP h/d11 olaparib_3000nM 1020 3.477121 1720.00 0.5930233 1.267157 0.4679952
h/d11+GFP-ALC1 exp4 h/d11 GFP-ALC1 exp4 GFP-ALC1 h/d11 GFP-ALC1 h/d11 olaparib_3000nM 1314 3.477121 1886.00 0.6967126 1.168804 0.5960901
d11/d11+GFP exp4 d11/d11 GFP exp4 GFP d11/d11 GFP d11/d11 olaparib_3000nM 152 3.477121 485.00 0.3134021 1.695022 0.1848955
d11/d11+GFP-ALC1 exp4 d11/d11 GFP-ALC1 exp4 GFP-ALC1 d11/d11 GFP-ALC1 d11/d11 olaparib_3000nM 211 3.477121 376.25 0.5607973 1.418106 0.3954552

Plot Data

library(ggplot2)

# raw data
ggplot(dataset, aes(x=Olaparib, y=Counts)) + 
        theme_bw() +
        theme(panel.grid=element_blank(), text = element_text(size=14)) +
        geom_smooth(method=lm, formula = y ~ poly(x,2), se=FALSE, aes(colour=BRCA)) +
        geom_point(aes(colour=BRCA, shape=Experiment), size=2) +        
        facet_grid(. ~ Alc1) +
        xlab(label = "Olaparib (log10 nM)") +
        scale_shape_manual(values=15:20) +
        scale_color_manual(values=c("#000000","#FF0000"))

# NormCounts Linear
ggplot(dataset, aes(x=Olaparib, y=NormCounts, color=BRCA)) + 
        theme_bw() +
        theme(panel.grid=element_blank(), text = element_text(size=14)) +
        geom_point(aes(colour=BRCA), size=2) +        
        geom_smooth(method=lm, formula = y ~ x, se=FALSE) +
        facet_grid(. ~ Alc1) +
        xlab(label = "Olaparib (log10 nM)") +
        scale_color_manual(values=c("#000000","#FF0000"))

# NormCounts2 Linear
ggplot(dataset, aes(x=Olaparib, y=NormCounts2, color=BRCA)) + 
        theme_bw() +
        theme(panel.grid=element_blank(), text = element_text(size=14)) +
        geom_point(aes(colour=BRCA), size=2) +        
        geom_smooth(method=lm, formula = y ~ x, se=FALSE) +
        facet_grid(. ~ Alc1) +
        xlab(label = "Olaparib (log10 nM)") +
        scale_color_manual(values=c("#000000","#FF0000"))

# NormCounts Quadratic
ggplot(dataset, aes(x=Olaparib, y=NormCounts, color=BRCA)) + 
        theme_bw() +
        theme(panel.grid=element_blank(), text = element_text(size=14)) +
        geom_point(aes(colour=BRCA), size=2) +        
        geom_smooth(method=lm, formula = y ~ poly(x,2), se=FALSE) +
        facet_grid(. ~ Alc1) +
        xlab(label = "Olaparib (log10 nM)")+
        scale_color_manual(values=c("#000000","#FF0000"))

# NormCounts2 Quadratic
ggplot(dataset, aes(x=Olaparib, y=NormCounts2, color=BRCA)) + 
        theme_bw() +
        theme(panel.grid=element_blank(), text = element_text(size=14)) +
        geom_point(aes(colour=BRCA), size=2) +        
        geom_smooth(method=lm, formula = y ~ poly(x,2), se=FALSE) +
        facet_grid(. ~ Alc1) +
        xlab(label = "Olaparib (log10 nM)") +
        scale_color_manual(values=c("#000000","#FF0000"))

# NormCounts Cubic
ggplot(dataset, aes(x=Olaparib, y=NormCounts, color=BRCA)) + 
        theme_bw() +
        theme(panel.grid=element_blank(), text = element_text(size=14)) +
        geom_point(aes(colour=BRCA), size=2) +        
        geom_smooth(method=lm, formula = y ~ poly(x,3), se=FALSE) +
        facet_grid(. ~ Alc1) +
        xlab(label = "Olaparib (log10 nM)")+
        scale_color_manual(values=c("#000000","#FF0000"))

# NormCounts2 Cubic
ggplot(dataset, aes(x=Olaparib, y=NormCounts2, color=BRCA)) + 
        theme_bw() +
        theme(panel.grid=element_blank(), text = element_text(size=14)) +
        geom_point(aes(colour=BRCA), size=2) +        
        geom_smooth(method=lm, formula = y ~ poly(x,3), se=FALSE) +
        facet_grid(. ~ Alc1) +
        xlab(label = "Olaparib (log10 nM)") +
        scale_color_manual(values=c("#000000","#FF0000"))

library(Cairo)


cairo_pdf("Figure5H.pdf", width = 5, height = 4, family = "Arial")

ggplot(dataset, aes(x=Olaparib, y=NormCounts2)) + 
        theme_bw() +
        theme(panel.grid.major=element_blank(), panel.grid.minor=element_blank(), 
              axis.line = element_line(colour = "black"), text = element_text(size=14),
              panel.border = element_blank(), panel.background = element_blank()) +
        geom_point(aes(colour = BRCA, shape = Alc1), size=1.75) +
        geom_smooth(method=lm, formula = y ~ poly(x,3), se=TRUE, 
                    aes(group = GSID,colour = BRCA, linetype = Alc1), fill='#DDDDDD', size=0.5) +
        xlab(label = "Olaparib (log10 nM)") +
        ylab(label = "Normalized Counts") +
        scale_color_manual(values=c("#000000","#FF0000")) +
        guides(linetype = guide_legend(override.aes= list(color = "#555555"))) 

dev.off()
## quartz_off_screen 
##                 2

Models

library(MASS)
library(DHARMa)
library(lme4)
library(lmerTest)
library(bbmle)

Linear formula

fit1 <- lm(Counts ~ Experiment + Olaparib*BRCA*Alc1, data = dataset)
print(summary(fit1))
## 
## Call:
## lm(formula = Counts ~ Experiment + Olaparib * BRCA * Alc1, data = dataset)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -341.65  -99.09   -8.29  101.69  323.01 
## 
## Coefficients:
##                                   Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                        2880.21      83.47  34.504  < 2e-16 ***
## Experimentexp2                     -117.94      60.23  -1.958  0.05550 .  
## Experimentexp3                     -427.94      60.23  -7.105 3.06e-09 ***
## Experimentexp4                     -444.25      60.23  -7.375 1.12e-09 ***
## Olaparib                           -342.06      33.15 -10.318 2.78e-14 ***
## BRCAd11/d11                       -1309.45     105.90 -12.365  < 2e-16 ***
## Alc1GFP-ALC1                       -223.76     105.90  -2.113  0.03934 *  
## Olaparib:BRCAd11/d11                 19.92      46.88   0.425  0.67258    
## Olaparib:Alc1GFP-ALC1               140.46      46.88   2.996  0.00416 ** 
## BRCAd11/d11:Alc1GFP-ALC1           -338.26     149.77  -2.259  0.02805 *  
## Olaparib:BRCAd11/d11:Alc1GFP-ALC1    39.90      66.30   0.602  0.54988    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 170.4 on 53 degrees of freedom
## Multiple R-squared:  0.9645, Adjusted R-squared:  0.9578 
## F-statistic:   144 on 10 and 53 DF,  p-value: < 2.2e-16
cat("AIC: ", AIC(fit1))
## AIC:  851.2118
simres <- simulateResiduals(fittedModel = fit1)
plot(simres)

fit2 <- lm(NormCounts ~ Olaparib*BRCA*Alc1, data = dataset)
print(summary(fit2))
## 
## Call:
## lm(formula = NormCounts ~ Olaparib * BRCA * Alc1, data = dataset)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.229003 -0.068268 -0.007592  0.059351  0.260029 
## 
## Coefficients:
##                                   Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                        1.32580    0.04911  26.998  < 2e-16 ***
## Olaparib                          -0.17537    0.02174  -8.066 6.02e-11 ***
## BRCAd11/d11                        0.47329    0.06945   6.815 6.99e-09 ***
## Alc1GFP-ALC1                      -0.13861    0.06945  -1.996   0.0508 .  
## Olaparib:BRCAd11/d11              -0.25475    0.03075  -8.286 2.62e-11 ***
## Olaparib:Alc1GFP-ALC1              0.07461    0.03075   2.427   0.0185 *  
## BRCAd11/d11:Alc1GFP-ALC1          -0.14652    0.09822  -1.492   0.1414    
## Olaparib:BRCAd11/d11:Alc1GFP-ALC1  0.07886    0.04348   1.814   0.0751 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.1117 on 56 degrees of freedom
## Multiple R-squared:  0.9195, Adjusted R-squared:  0.9095 
## F-statistic: 91.41 on 7 and 56 DF,  p-value: < 2.2e-16
cat("AIC: ", AIC(fit2))
## AIC:  -89.46234
simres <- simulateResiduals(fittedModel = fit2)
plot(simres)

fit3 <- lm(NormCounts2 ~ Olaparib*BRCA*Alc1, data = dataset)
print(summary(fit3))
## 
## Call:
## lm(formula = NormCounts2 ~ Olaparib * BRCA * Alc1, data = dataset)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.139051 -0.050234 -0.005139  0.049554  0.153408 
## 
## Coefficients:
##                                    Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                        1.046283   0.033805  30.950  < 2e-16 ***
## Olaparib                          -0.138394   0.014966  -9.247 7.21e-13 ***
## BRCAd11/d11                        0.015117   0.047808   0.316   0.7530    
## Alc1GFP-ALC1                      -0.030549   0.047808  -0.639   0.5254    
## Olaparib:BRCAd11/d11              -0.115361   0.021165  -5.450 1.17e-06 ***
## Olaparib:Alc1GFP-ALC1              0.052187   0.021165   2.466   0.0168 *  
## BRCAd11/d11:Alc1GFP-ALC1           0.036750   0.067611   0.544   0.5889    
## Olaparib:BRCAd11/d11:Alc1GFP-ALC1  0.006484   0.029932   0.217   0.8293    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.07691 on 56 degrees of freedom
## Multiple R-squared:  0.9242, Adjusted R-squared:  0.9147 
## F-statistic: 97.52 on 7 and 56 DF,  p-value: < 2.2e-16
cat("AIC: ", AIC(fit3))
## AIC:  -137.2569
simres <- simulateResiduals(fittedModel = fit3)
plot(simres)

fit4 <- lmer(Counts ~ Olaparib*BRCA*Alc1 + (1|UID), data = dataset)
print(summary(fit4))
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: Counts ~ Olaparib * BRCA * Alc1 + (1 | UID)
##    Data: dataset
## 
## REML criterion at convergence: 783.9
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -1.85140 -0.50837  0.00144  0.46463  2.11990 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  UID      (Intercept) 47106    217.0   
##  Residual             29754    172.5   
## Number of obs: 64, groups:  UID, 16
## 
## Fixed effects:
##                                   Estimate Std. Error       df t value Pr(>|t|)
## (Intercept)                        2632.68     132.38    19.39  19.887 2.31e-14
## Olaparib                           -342.06      33.57    44.00 -10.191 3.72e-13
## BRCAd11/d11                       -1309.45     187.22    19.39  -6.994 1.04e-06
## Alc1GFP-ALC1                       -223.76     187.22    19.39  -1.195  0.24643
## Olaparib:BRCAd11/d11                 19.92      47.47    44.00   0.420  0.67673
## Olaparib:Alc1GFP-ALC1               140.46      47.47    44.00   2.959  0.00496
## BRCAd11/d11:Alc1GFP-ALC1           -338.26     264.76    19.39  -1.278  0.21648
## Olaparib:BRCAd11/d11:Alc1GFP-ALC1    39.90      67.13    44.00   0.594  0.55531
##                                      
## (Intercept)                       ***
## Olaparib                          ***
## BRCAd11/d11                       ***
## Alc1GFP-ALC1                         
## Olaparib:BRCAd11/d11                 
## Olaparib:Alc1GFP-ALC1             ** 
## BRCAd11/d11:Alc1GFP-ALC1             
## Olaparib:BRCAd11/d11:Alc1GFP-ALC1    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##              (Intr) Olaprb BRCAd11/11 A1GFP- Ol:BRCA11/11 O:A1GF BRCA11/11:
## Olaparib     -0.471                                                        
## BRCAd11/d11  -0.707  0.333                                                 
## Al1GFP-ALC1  -0.707  0.333  0.500                                          
## Ol:BRCA11/11  0.333 -0.707 -0.471     -0.236                               
## O:A1GFP-ALC   0.333 -0.707 -0.236     -0.471  0.500                        
## BRCA11/11:A   0.500 -0.236 -0.707     -0.707  0.333        0.333           
## O:BRCA11/11: -0.236  0.500  0.333      0.333 -0.707       -0.707 -0.471
cat("AIC: ", AIC(fit4))
## AIC:  803.8541
simres <- simulateResiduals(fittedModel = fit4)
plot(simres)

Quadratic formula

fit5 <- lm(Counts ~ Experiment + poly(Olaparib,2)*BRCA*Alc1, data = dataset)
print(summary(fit5))
## 
## Call:
## lm(formula = Counts ~ Experiment + poly(Olaparib, 2) * BRCA * 
##     Alc1, data = dataset)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -309.91 -101.30    1.91   81.79  383.55 
## 
## Coefficients:
##                                             Estimate Std. Error t value
## (Intercept)                                  2244.72      53.04  42.324
## Experimentexp2                               -117.94      56.70  -2.080
## Experimentexp3                               -427.94      56.70  -7.548
## Experimentexp4                               -444.25      56.70  -7.835
## poly(Olaparib, 2)1                          -3515.62     320.74 -10.961
## poly(Olaparib, 2)2                           -707.28     320.74  -2.205
## BRCAd11/d11                                 -1272.44      56.70 -22.442
## Alc1GFP-ALC1                                   37.19      56.70   0.656
## poly(Olaparib, 2)1:BRCAd11/d11                204.78     453.59   0.451
## poly(Olaparib, 2)2:BRCAd11/d11                 75.06     453.59   0.165
## poly(Olaparib, 2)1:Alc1GFP-ALC1              1443.58     453.59   3.183
## poly(Olaparib, 2)2:Alc1GFP-ALC1               418.64     453.59   0.923
## BRCAd11/d11:Alc1GFP-ALC1                     -264.13      80.18  -3.294
## poly(Olaparib, 2)1:BRCAd11/d11:Alc1GFP-ALC1   410.10     641.47   0.639
## poly(Olaparib, 2)2:BRCAd11/d11:Alc1GFP-ALC1  -145.95     641.47  -0.228
##                                             Pr(>|t|)    
## (Intercept)                                  < 2e-16 ***
## Experimentexp2                               0.04277 *  
## Experimentexp3                              9.45e-10 ***
## Experimentexp4                              3.41e-10 ***
## poly(Olaparib, 2)1                          8.77e-15 ***
## poly(Olaparib, 2)2                           0.03216 *  
## BRCAd11/d11                                  < 2e-16 ***
## Alc1GFP-ALC1                                 0.51497    
## poly(Olaparib, 2)1:BRCAd11/d11               0.65365    
## poly(Olaparib, 2)2:BRCAd11/d11               0.86924    
## poly(Olaparib, 2)1:Alc1GFP-ALC1              0.00254 ** 
## poly(Olaparib, 2)2:Alc1GFP-ALC1              0.36056    
## BRCAd11/d11:Alc1GFP-ALC1                     0.00184 ** 
## poly(Olaparib, 2)1:BRCAd11/d11:Alc1GFP-ALC1  0.52560    
## poly(Olaparib, 2)2:BRCAd11/d11:Alc1GFP-ALC1  0.82096    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 160.4 on 49 degrees of freedom
## Multiple R-squared:  0.9709, Adjusted R-squared:  0.9626 
## F-statistic: 116.9 on 14 and 49 DF,  p-value: < 2.2e-16
cat("AIC: ", AIC(fit5))
## AIC:  846.4481
simres <- simulateResiduals(fittedModel = fit5)
plot(simres)

fit6 <- lm(NormCounts ~ poly(Olaparib,2)*BRCA*Alc1, data = dataset)
print(summary(fit6))
## 
## Call:
## lm(formula = NormCounts ~ poly(Olaparib, 2) * BRCA * Alc1, data = dataset)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.146645 -0.052636 -0.003375  0.058559  0.172530 
## 
## Coefficients:
##                                               Estimate Std. Error t value
## (Intercept)                                  1.000e+00  2.070e-02  48.321
## poly(Olaparib, 2)1                          -1.802e+00  1.656e-01 -10.887
## poly(Olaparib, 2)2                          -3.822e-01  1.656e-01  -2.308
## BRCAd11/d11                                  9.341e-17  2.927e-02   0.000
## Alc1GFP-ALC1                                 1.297e-16  2.927e-02   0.000
## poly(Olaparib, 2)1:BRCAd11/d11              -2.618e+00  2.341e-01 -11.183
## poly(Olaparib, 2)2:BRCAd11/d11              -4.290e-01  2.341e-01  -1.832
## poly(Olaparib, 2)1:Alc1GFP-ALC1              7.668e-01  2.341e-01   3.275
## poly(Olaparib, 2)2:Alc1GFP-ALC1              2.234e-01  2.341e-01   0.954
## BRCAd11/d11:Alc1GFP-ALC1                    -1.608e-16  4.139e-02   0.000
## poly(Olaparib, 2)1:BRCAd11/d11:Alc1GFP-ALC1  8.105e-01  3.311e-01   2.448
## poly(Olaparib, 2)2:BRCAd11/d11:Alc1GFP-ALC1 -1.481e-01  3.311e-01  -0.447
##                                             Pr(>|t|)    
## (Intercept)                                  < 2e-16 ***
## poly(Olaparib, 2)1                           5.1e-15 ***
## poly(Olaparib, 2)2                           0.02499 *  
## BRCAd11/d11                                  1.00000    
## Alc1GFP-ALC1                                 1.00000    
## poly(Olaparib, 2)1:BRCAd11/d11               1.9e-15 ***
## poly(Olaparib, 2)2:BRCAd11/d11               0.07265 .  
## poly(Olaparib, 2)1:Alc1GFP-ALC1              0.00188 ** 
## poly(Olaparib, 2)2:Alc1GFP-ALC1              0.34433    
## BRCAd11/d11:Alc1GFP-ALC1                     1.00000    
## poly(Olaparib, 2)1:BRCAd11/d11:Alc1GFP-ALC1  0.01778 *  
## poly(Olaparib, 2)2:BRCAd11/d11:Alc1GFP-ALC1  0.65643    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.08278 on 52 degrees of freedom
## Multiple R-squared:  0.959,  Adjusted R-squared:  0.9503 
## F-statistic: 110.5 on 11 and 52 DF,  p-value: < 2.2e-16
cat("AIC: ", AIC(fit6))
## AIC:  -124.5855
simres <- simulateResiduals(fittedModel = fit6)
plot(simres)

fit7 <- lm(NormCounts2 ~ poly(Olaparib,2)*BRCA*Alc1, data = dataset)
print(summary(fit7))
## 
## Call:
## lm(formula = NormCounts2 ~ poly(Olaparib, 2) * BRCA * Alc1, data = dataset)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.103409 -0.043894 -0.002888  0.038995  0.136155 
## 
## Coefficients:
##                                             Estimate Std. Error t value
## (Intercept)                                  0.78917    0.01468  53.753
## poly(Olaparib, 2)1                          -1.42239    0.11745 -12.110
## poly(Olaparib, 2)2                          -0.30160    0.11745  -2.568
## BRCAd11/d11                                 -0.19921    0.02076  -9.594
## Alc1GFP-ALC1                                 0.06641    0.02076   3.198
## poly(Olaparib, 2)1:BRCAd11/d11              -1.18566    0.16610  -7.138
## poly(Olaparib, 2)2:BRCAd11/d11              -0.17696    0.16610  -1.065
## poly(Olaparib, 2)1:Alc1GFP-ALC1              0.53637    0.16610   3.229
## poly(Olaparib, 2)2:Alc1GFP-ALC1              0.16580    0.16610   0.998
## BRCAd11/d11:Alc1GFP-ALC1                     0.04880    0.02936   1.662
## poly(Olaparib, 2)1:BRCAd11/d11:Alc1GFP-ALC1  0.06664    0.23490   0.284
## poly(Olaparib, 2)2:BRCAd11/d11:Alc1GFP-ALC1 -0.20615    0.23490  -0.878
##                                             Pr(>|t|)    
## (Intercept)                                  < 2e-16 ***
## poly(Olaparib, 2)1                           < 2e-16 ***
## poly(Olaparib, 2)2                           0.01315 *  
## BRCAd11/d11                                 4.26e-13 ***
## Alc1GFP-ALC1                                 0.00235 ** 
## poly(Olaparib, 2)1:BRCAd11/d11              2.98e-09 ***
## poly(Olaparib, 2)2:BRCAd11/d11               0.29164    
## poly(Olaparib, 2)1:Alc1GFP-ALC1              0.00215 ** 
## poly(Olaparib, 2)2:Alc1GFP-ALC1              0.32282    
## BRCAd11/d11:Alc1GFP-ALC1                     0.10256    
## poly(Olaparib, 2)1:BRCAd11/d11:Alc1GFP-ALC1  0.77776    
## poly(Olaparib, 2)2:BRCAd11/d11:Alc1GFP-ALC1  0.38421    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.05873 on 52 degrees of freedom
## Multiple R-squared:  0.959,  Adjusted R-squared:  0.9503 
## F-statistic: 110.4 on 11 and 52 DF,  p-value: < 2.2e-16
cat("AIC: ", AIC(fit7))
## AIC:  -168.5295
simres <- simulateResiduals(fittedModel = fit7)
plot(simres)

fit8 <- lmer(Counts ~ poly(Olaparib,2)*BRCA*Alc1 + (1|UID), data = dataset)
print(summary(fit8))
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: Counts ~ poly(Olaparib, 2) * BRCA * Alc1 + (1 | UID)
##    Data: dataset
## 
## REML criterion at convergence: 701.4
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -1.6123 -0.4767 -0.1080  0.6053  1.9160 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  UID      (Intercept) 48100    219.3   
##  Residual             25776    160.5   
## Number of obs: 64, groups:  UID, 16
## 
## Fixed effects:
##                                             Estimate Std. Error       df
## (Intercept)                                  1997.19     116.77    12.00
## poly(Olaparib, 2)1                          -3515.62     321.10    40.00
## poly(Olaparib, 2)2                           -707.28     321.10    40.00
## BRCAd11/d11                                 -1272.44     165.14    12.00
## Alc1GFP-ALC1                                   37.19     165.14    12.00
## poly(Olaparib, 2)1:BRCAd11/d11                204.78     454.10    40.00
## poly(Olaparib, 2)2:BRCAd11/d11                 75.06     454.10    40.00
## poly(Olaparib, 2)1:Alc1GFP-ALC1              1443.58     454.10    40.00
## poly(Olaparib, 2)2:Alc1GFP-ALC1               418.64     454.10    40.00
## BRCAd11/d11:Alc1GFP-ALC1                     -264.13     233.55    12.00
## poly(Olaparib, 2)1:BRCAd11/d11:Alc1GFP-ALC1   410.10     642.19    40.00
## poly(Olaparib, 2)2:BRCAd11/d11:Alc1GFP-ALC1  -145.95     642.19    40.00
##                                             t value Pr(>|t|)    
## (Intercept)                                  17.103 8.59e-10 ***
## poly(Olaparib, 2)1                          -10.949 1.33e-13 ***
## poly(Olaparib, 2)2                           -2.203  0.03344 *  
## BRCAd11/d11                                  -7.705 5.51e-06 ***
## Alc1GFP-ALC1                                  0.225  0.82563    
## poly(Olaparib, 2)1:BRCAd11/d11                0.451  0.65446    
## poly(Olaparib, 2)2:BRCAd11/d11                0.165  0.86954    
## poly(Olaparib, 2)1:Alc1GFP-ALC1               3.179  0.00285 ** 
## poly(Olaparib, 2)2:Alc1GFP-ALC1               0.922  0.36210    
## BRCAd11/d11:Alc1GFP-ALC1                     -1.131  0.28018    
## poly(Olaparib, 2)1:BRCAd11/d11:Alc1GFP-ALC1   0.639  0.52673    
## poly(Olaparib, 2)2:BRCAd11/d11:Alc1GFP-ALC1  -0.227  0.82137    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##                    (Intr) pl(O,2)1 pl(O,2)2 BRCAd11/11 A1GFP-
## ply(Olp,2)1         0.000                                    
## ply(Olp,2)2         0.000  0.000                             
## BRCAd11/d11        -0.707  0.000    0.000                    
## Al1GFP-ALC1        -0.707  0.000    0.000    0.500           
## pl(O,2)1:BRCA11/11  0.000 -0.707    0.000    0.000      0.000
## pl(O,2)2:BRCA11/11  0.000  0.000   -0.707    0.000      0.000
## p(O,2)1:A1G         0.000 -0.707    0.000    0.000      0.000
## p(O,2)2:A1G         0.000  0.000   -0.707    0.000      0.000
## BRCA11/11:A         0.500  0.000    0.000   -0.707     -0.707
## p(O,2)1:BRCA11/11:  0.000  0.500    0.000    0.000      0.000
## p(O,2)2:BRCA11/11:  0.000  0.000    0.500    0.000      0.000
##                    pl(O,2)1:BRCA11/11 pl(O,2)2:BRCA11/11 p(O,2)1:A p(O,2)2:A
## ply(Olp,2)1                                                                 
## ply(Olp,2)2                                                                 
## BRCAd11/d11                                                                 
## Al1GFP-ALC1                                                                 
## pl(O,2)1:BRCA11/11                                                          
## pl(O,2)2:BRCA11/11  0.000                                                   
## p(O,2)1:A1G         0.500              0.000                                
## p(O,2)2:A1G         0.000              0.500              0.000             
## BRCA11/11:A         0.000              0.000              0.000     0.000   
## p(O,2)1:BRCA11/11: -0.707              0.000             -0.707     0.000   
## p(O,2)2:BRCA11/11:  0.000             -0.707              0.000    -0.707   
##                    BRCA11/11: p(O,2)1:BRCA11/11:
## ply(Olp,2)1                                     
## ply(Olp,2)2                                     
## BRCAd11/d11                                     
## Al1GFP-ALC1                                     
## pl(O,2)1:BRCA11/11                              
## pl(O,2)2:BRCA11/11                              
## p(O,2)1:A1G                                     
## p(O,2)2:A1G                                     
## BRCA11/11:A                                     
## p(O,2)1:BRCA11/11:  0.000                       
## p(O,2)2:BRCA11/11:  0.000      0.000
cat("AIC: ", AIC(fit8))
## AIC:  729.3739
simres <- simulateResiduals(fittedModel = fit8)
plot(simres)

Cubic formula

fit9 <- lm(Counts ~ Experiment + poly(Olaparib,3)*BRCA*Alc1, data = dataset)
print(summary(fit9))
## 
## Call:
## lm(formula = Counts ~ Experiment + poly(Olaparib, 3) * BRCA * 
##     Alc1, data = dataset)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -272.53 -100.58    8.31   74.47  367.41 
## 
## Coefficients:
##                                             Estimate Std. Error t value
## (Intercept)                                  2244.72      50.24  44.678
## Experimentexp2                               -117.94      53.71  -2.196
## Experimentexp3                               -427.94      53.71  -7.967
## Experimentexp4                               -444.25      53.71  -8.271
## poly(Olaparib, 3)1                          -3515.62     303.84 -11.571
## poly(Olaparib, 3)2                           -707.28     303.84  -2.328
## poly(Olaparib, 3)3                            891.45     303.84   2.934
## BRCAd11/d11                                 -1272.44      53.71 -23.690
## Alc1GFP-ALC1                                   37.19      53.71   0.692
## poly(Olaparib, 3)1:BRCAd11/d11                204.78     429.69   0.477
## poly(Olaparib, 3)2:BRCAd11/d11                 75.06     429.69   0.175
## poly(Olaparib, 3)3:BRCAd11/d11               -657.51     429.69  -1.530
## poly(Olaparib, 3)1:Alc1GFP-ALC1              1443.58     429.69   3.360
## poly(Olaparib, 3)2:Alc1GFP-ALC1               418.64     429.69   0.974
## poly(Olaparib, 3)3:Alc1GFP-ALC1              -874.63     429.69  -2.036
## BRCAd11/d11:Alc1GFP-ALC1                     -264.13      75.96  -3.477
## poly(Olaparib, 3)1:BRCAd11/d11:Alc1GFP-ALC1   410.10     607.67   0.675
## poly(Olaparib, 3)2:BRCAd11/d11:Alc1GFP-ALC1  -145.95     607.67  -0.240
## poly(Olaparib, 3)3:BRCAd11/d11:Alc1GFP-ALC1   832.44     607.67   1.370
##                                             Pr(>|t|)    
## (Intercept)                                  < 2e-16 ***
## Experimentexp2                               0.03330 *  
## Experimentexp3                              3.85e-10 ***
## Experimentexp4                              1.39e-10 ***
## poly(Olaparib, 3)1                          4.44e-15 ***
## poly(Olaparib, 3)2                           0.02448 *  
## poly(Olaparib, 3)3                           0.00525 ** 
## BRCAd11/d11                                  < 2e-16 ***
## Alc1GFP-ALC1                                 0.49227    
## poly(Olaparib, 3)1:BRCAd11/d11               0.63598    
## poly(Olaparib, 3)2:BRCAd11/d11               0.86210    
## poly(Olaparib, 3)3:BRCAd11/d11               0.13297    
## poly(Olaparib, 3)1:Alc1GFP-ALC1              0.00160 ** 
## poly(Olaparib, 3)2:Alc1GFP-ALC1              0.33512    
## poly(Olaparib, 3)3:Alc1GFP-ALC1              0.04771 *  
## BRCAd11/d11:Alc1GFP-ALC1                     0.00113 ** 
## poly(Olaparib, 3)1:BRCAd11/d11:Alc1GFP-ALC1  0.50321    
## poly(Olaparib, 3)2:BRCAd11/d11:Alc1GFP-ALC1  0.81128    
## poly(Olaparib, 3)3:BRCAd11/d11:Alc1GFP-ALC1  0.17752    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 151.9 on 45 degrees of freedom
## Multiple R-squared:  0.976,  Adjusted R-squared:  0.9665 
## F-statistic: 101.8 on 18 and 45 DF,  p-value: < 2.2e-16
cat("AIC: ", AIC(fit9))
## AIC:  842.0695
simres <- simulateResiduals(fittedModel = fit9)
plot(simres)

fit10 <- lm(NormCounts ~ poly(Olaparib,3)*BRCA*Alc1, data = dataset)
print(summary(fit10))
## 
## Call:
## lm(formula = NormCounts ~ poly(Olaparib, 3) * BRCA * Alc1, data = dataset)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.124929 -0.049253 -0.001148  0.039382  0.144743 
## 
## Coefficients:
##                                               Estimate Std. Error t value
## (Intercept)                                  1.000e+00  1.819e-02  54.989
## poly(Olaparib, 3)1                          -1.802e+00  1.455e-01 -12.389
## poly(Olaparib, 3)2                          -3.822e-01  1.455e-01  -2.627
## poly(Olaparib, 3)3                           4.265e-01  1.455e-01   2.931
## BRCAd11/d11                                 -2.071e-17  2.572e-02   0.000
## Alc1GFP-ALC1                                 4.850e-17  2.572e-02   0.000
## poly(Olaparib, 3)1:BRCAd11/d11              -2.618e+00  2.057e-01 -12.726
## poly(Olaparib, 3)2:BRCAd11/d11              -4.290e-01  2.057e-01  -2.085
## poly(Olaparib, 3)3:BRCAd11/d11              -9.427e-02  2.057e-01  -0.458
## poly(Olaparib, 3)1:Alc1GFP-ALC1              7.668e-01  2.057e-01   3.727
## poly(Olaparib, 3)2:Alc1GFP-ALC1              2.234e-01  2.057e-01   1.086
## poly(Olaparib, 3)3:Alc1GFP-ALC1             -4.169e-01  2.057e-01  -2.026
## BRCAd11/d11:Alc1GFP-ALC1                    -8.866e-17  3.637e-02   0.000
## poly(Olaparib, 3)1:BRCAd11/d11:Alc1GFP-ALC1  8.105e-01  2.910e-01   2.786
## poly(Olaparib, 3)2:BRCAd11/d11:Alc1GFP-ALC1 -1.481e-01  2.910e-01  -0.509
## poly(Olaparib, 3)3:BRCAd11/d11:Alc1GFP-ALC1  4.268e-01  2.910e-01   1.467
##                                             Pr(>|t|)    
## (Intercept)                                  < 2e-16 ***
## poly(Olaparib, 3)1                           < 2e-16 ***
## poly(Olaparib, 3)2                          0.011533 *  
## poly(Olaparib, 3)3                          0.005156 ** 
## BRCAd11/d11                                 1.000000    
## Alc1GFP-ALC1                                1.000000    
## poly(Olaparib, 3)1:BRCAd11/d11               < 2e-16 ***
## poly(Olaparib, 3)2:BRCAd11/d11              0.042409 *  
## poly(Olaparib, 3)3:BRCAd11/d11              0.648902    
## poly(Olaparib, 3)1:Alc1GFP-ALC1             0.000511 ***
## poly(Olaparib, 3)2:Alc1GFP-ALC1             0.282887    
## poly(Olaparib, 3)3:Alc1GFP-ALC1             0.048309 *  
## BRCAd11/d11:Alc1GFP-ALC1                    1.000000    
## poly(Olaparib, 3)1:BRCAd11/d11:Alc1GFP-ALC1 0.007625 ** 
## poly(Olaparib, 3)2:BRCAd11/d11:Alc1GFP-ALC1 0.612977    
## poly(Olaparib, 3)3:BRCAd11/d11:Alc1GFP-ALC1 0.148907    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.07274 on 48 degrees of freedom
## Multiple R-squared:  0.9708, Adjusted R-squared:  0.9616 
## F-statistic: 106.2 on 15 and 48 DF,  p-value: < 2.2e-16
cat("AIC: ", AIC(fit10))
## AIC:  -138.2543
simres <- simulateResiduals(fittedModel = fit10)
plot(simres)

fit11 <- lm(NormCounts2 ~ poly(Olaparib,3)*BRCA*Alc1, data = dataset)
print(summary(fit11))
## 
## Call:
## lm(formula = NormCounts2 ~ poly(Olaparib, 3) * BRCA * Alc1, data = dataset)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.102304 -0.035893 -0.000865  0.029825  0.114226 
## 
## Coefficients:
##                                             Estimate Std. Error t value
## (Intercept)                                  0.78917    0.01285  61.407
## poly(Olaparib, 3)1                          -1.42239    0.10281 -13.835
## poly(Olaparib, 3)2                          -0.30160    0.10281  -2.933
## poly(Olaparib, 3)3                           0.33655    0.10281   3.273
## BRCAd11/d11                                 -0.19921    0.01817 -10.961
## Alc1GFP-ALC1                                 0.06641    0.01817   3.654
## poly(Olaparib, 3)1:BRCAd11/d11              -1.18566    0.14540  -8.155
## poly(Olaparib, 3)2:BRCAd11/d11              -0.17696    0.14540  -1.217
## poly(Olaparib, 3)3:BRCAd11/d11              -0.14057    0.14540  -0.967
## poly(Olaparib, 3)1:Alc1GFP-ALC1              0.53637    0.14540   3.689
## poly(Olaparib, 3)2:Alc1GFP-ALC1              0.16580    0.14540   1.140
## poly(Olaparib, 3)3:Alc1GFP-ALC1             -0.32837    0.14540  -2.258
## BRCAd11/d11:Alc1GFP-ALC1                     0.04880    0.02570   1.898
## poly(Olaparib, 3)1:BRCAd11/d11:Alc1GFP-ALC1  0.06664    0.20562   0.324
## poly(Olaparib, 3)2:BRCAd11/d11:Alc1GFP-ALC1 -0.20615    0.20562  -1.003
## poly(Olaparib, 3)3:BRCAd11/d11:Alc1GFP-ALC1  0.37365    0.20562   1.817
##                                             Pr(>|t|)    
## (Intercept)                                  < 2e-16 ***
## poly(Olaparib, 3)1                           < 2e-16 ***
## poly(Olaparib, 3)2                          0.005126 ** 
## poly(Olaparib, 3)3                          0.001974 ** 
## BRCAd11/d11                                 1.16e-14 ***
## Alc1GFP-ALC1                                0.000639 ***
## poly(Olaparib, 3)1:BRCAd11/d11              1.29e-10 ***
## poly(Olaparib, 3)2:BRCAd11/d11              0.229537    
## poly(Olaparib, 3)3:BRCAd11/d11              0.338503    
## poly(Olaparib, 3)1:Alc1GFP-ALC1             0.000574 ***
## poly(Olaparib, 3)2:Alc1GFP-ALC1             0.259820    
## poly(Olaparib, 3)3:Alc1GFP-ALC1             0.028500 *  
## BRCAd11/d11:Alc1GFP-ALC1                    0.063656 .  
## poly(Olaparib, 3)1:BRCAd11/d11:Alc1GFP-ALC1 0.747272    
## poly(Olaparib, 3)2:BRCAd11/d11:Alc1GFP-ALC1 0.321110    
## poly(Olaparib, 3)3:BRCAd11/d11:Alc1GFP-ALC1 0.075440 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.05141 on 48 degrees of freedom
## Multiple R-squared:  0.971,  Adjusted R-squared:  0.9619 
## F-statistic:   107 on 15 and 48 DF,  p-value: < 2.2e-16
cat("AIC: ", AIC(fit11))
## AIC:  -182.6914
simres <- simulateResiduals(fittedModel = fit11)
plot(simres)

fit12 <- lmer(Counts ~ poly(Olaparib,3)*BRCA*Alc1 + (1|UID), data = dataset)
print(summary(fit12))
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: Counts ~ poly(Olaparib, 3) * BRCA * Alc1 + (1 | UID)
##    Data: dataset
## 
## REML criterion at convergence: 638.9
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -1.71965 -0.44043 -0.03705  0.52519  1.85497 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  UID      (Intercept) 48923    221.2   
##  Residual             22484    149.9   
## Number of obs: 64, groups:  UID, 16
## 
## Fixed effects:
##                                             Estimate Std. Error       df
## (Intercept)                                  1997.19     116.77    12.00
## poly(Olaparib, 3)1                          -3515.62     299.89    36.00
## poly(Olaparib, 3)2                           -707.28     299.89    36.00
## poly(Olaparib, 3)3                            891.45     299.89    36.00
## BRCAd11/d11                                 -1272.44     165.14    12.00
## Alc1GFP-ALC1                                   37.19     165.14    12.00
## poly(Olaparib, 3)1:BRCAd11/d11                204.78     424.11    36.00
## poly(Olaparib, 3)2:BRCAd11/d11                 75.06     424.11    36.00
## poly(Olaparib, 3)3:BRCAd11/d11               -657.51     424.11    36.00
## poly(Olaparib, 3)1:Alc1GFP-ALC1              1443.58     424.11    36.00
## poly(Olaparib, 3)2:Alc1GFP-ALC1               418.64     424.11    36.00
## poly(Olaparib, 3)3:Alc1GFP-ALC1              -874.63     424.11    36.00
## BRCAd11/d11:Alc1GFP-ALC1                     -264.13     233.55    12.00
## poly(Olaparib, 3)1:BRCAd11/d11:Alc1GFP-ALC1   410.10     599.78    36.00
## poly(Olaparib, 3)2:BRCAd11/d11:Alc1GFP-ALC1  -145.95     599.78    36.00
## poly(Olaparib, 3)3:BRCAd11/d11:Alc1GFP-ALC1   832.44     599.78    36.00
##                                             t value Pr(>|t|)    
## (Intercept)                                  17.103 8.59e-10 ***
## poly(Olaparib, 3)1                          -11.723 7.54e-14 ***
## poly(Olaparib, 3)2                           -2.358  0.02390 *  
## poly(Olaparib, 3)3                            2.973  0.00524 ** 
## BRCAd11/d11                                  -7.705 5.51e-06 ***
## Alc1GFP-ALC1                                  0.225  0.82563    
## poly(Olaparib, 3)1:BRCAd11/d11                0.483  0.63214    
## poly(Olaparib, 3)2:BRCAd11/d11                0.177  0.86051    
## poly(Olaparib, 3)3:BRCAd11/d11               -1.550  0.12981    
## poly(Olaparib, 3)1:Alc1GFP-ALC1               3.404  0.00164 ** 
## poly(Olaparib, 3)2:Alc1GFP-ALC1               0.987  0.33018    
## poly(Olaparib, 3)3:Alc1GFP-ALC1              -2.062  0.04646 *  
## BRCAd11/d11:Alc1GFP-ALC1                     -1.131  0.28018    
## poly(Olaparib, 3)1:BRCAd11/d11:Alc1GFP-ALC1   0.684  0.49851    
## poly(Olaparib, 3)2:BRCAd11/d11:Alc1GFP-ALC1  -0.243  0.80912    
## poly(Olaparib, 3)3:BRCAd11/d11:Alc1GFP-ALC1   1.388  0.17370    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
cat("AIC: ", AIC(fit12))
## AIC:  674.9294
simres <- simulateResiduals(fittedModel = fit12)
plot(simres)

Compare Results

ICtab(fit1,fit2,fit3,fit4,
      fit5,fit6,fit7,fit8,
      fit9,fit10,fit11,fit12,
      base=T)
##       AIC    dAIC   df
## fit11 -182.7    0.0 17
## fit7  -168.5   14.2 13
## fit10 -138.3   44.4 17
## fit3  -137.3   45.4 9 
## fit6  -124.6   58.1 13
## fit2   -89.5   93.2 9 
## fit12  674.9  857.6 18
## fit8   729.4  912.1 14
## fit4   803.9  986.5 10
## fit9   842.1 1024.8 20
## fit5   846.4 1029.1 16
## fit1   851.2 1033.9 12

Final Result

fit <- fit11

output <- coef(summary(fit))
output <- output[grep("Olaparib", rownames(output)),]

rownames(output) <- gsub("poly\\(|, [1-3]\\)","", rownames(output) )
rownames(output) <- gsub("Alc1",  paste0(" ",levels(dataset$Alc1)[1], " vs. "), rownames(output))
rownames(output)[!(grepl("vs", rownames(output)))] <- paste(rownames(output)[!(grepl("vs", rownames(output)))], levels(dataset$Alc1)[1],  sep = " in " )

rownames(output) <- gsub("BRCA",  paste0(" ",levels(dataset$BRCA)[1], " vs. "), rownames(output))
rownames(output)[!(grepl("vs.*vs|in", rownames(output)))] <- paste(rownames(output)[!(grepl("vs.*vs|in", rownames(output)))], levels(dataset$BRCA)[1],  sep = " in " )

rownames(output)[!(grepl("vs", rownames(output)))] <- paste(rownames(output)[!(grepl("vs", rownames(output)))], levels(dataset$BRCA)[1],  sep = " " )


# suggested result table
kable(output, row.names = T)
Estimate Std. Error t value Pr(>|t|)
Olaparib1 in GFP h/d11 -1.4223910 0.1028122 -13.8348519 0.0000000
Olaparib2 in GFP h/d11 -0.3015955 0.1028122 -2.9334619 0.0051264
Olaparib3 in GFP h/d11 0.3365522 0.1028122 3.2734670 0.0019739
Olaparib1: h/d11 vs. d11/d11 in GFP -1.1856592 0.1453983 -8.1545579 0.0000000
Olaparib2: h/d11 vs. d11/d11 in GFP -0.1769563 0.1453983 -1.2170450 0.2295372
Olaparib3: h/d11 vs. d11/d11 in GFP -0.1405672 0.1453983 -0.9667731 0.3385035
Olaparib1: GFP vs. GFP-ALC1 in h/d11 0.5363728 0.1453983 3.6889887 0.0005737
Olaparib2: GFP vs. GFP-ALC1 in h/d11 0.1657976 0.1453983 1.1402990 0.2598197
Olaparib3: GFP vs. GFP-ALC1 in h/d11 -0.3283737 0.1453983 -2.2584419 0.0285003
Olaparib1: h/d11 vs. d11/d11: GFP vs. GFP-ALC1 0.0666424 0.2056243 0.3240977 0.7472722
Olaparib2: h/d11 vs. d11/d11: GFP vs. GFP-ALC1 -0.2061467 0.2056243 -1.0025405 0.3211100
Olaparib3: h/d11 vs. d11/d11: GFP vs. GFP-ALC1 0.3736504 0.2056243 1.8171508 0.0754397
write.table(output, file = "Figure5H_Stats_Ref_h_d11.txt", quote = F, sep = "\t", row.names = T, col.names = NA)
dataset$BRCA <- relevel(dataset$BRCA, ref = "d11/d11")

fit <- lm(NormCounts2 ~ poly(Olaparib,3)*BRCA*Alc1, data = dataset)

output <- coef(summary(fit))
output <- output[grep("Olaparib", rownames(output)),]

rownames(output) <- gsub("poly\\(|, [1-3]\\)","", rownames(output) )
rownames(output) <- gsub("Alc1",  paste0(" ",levels(dataset$Alc1)[1], " vs. "), rownames(output))
rownames(output)[!(grepl("vs", rownames(output)))] <- paste(rownames(output)[!(grepl("vs", rownames(output)))], levels(dataset$Alc1)[1],  sep = " in " )

rownames(output) <- gsub("BRCA",  paste0(" ",levels(dataset$BRCA)[1], " vs. "), rownames(output))
rownames(output)[!(grepl("vs.*vs|in", rownames(output)))] <- paste(rownames(output)[!(grepl("vs.*vs|in", rownames(output)))], levels(dataset$BRCA)[1],  sep = " in " )

rownames(output)[!(grepl("vs", rownames(output)))] <- paste(rownames(output)[!(grepl("vs", rownames(output)))], levels(dataset$BRCA)[1],  sep = " " )




# suggested result table
kable(output, row.names = T)
Estimate Std. Error t value Pr(>|t|)
Olaparib1 in GFP d11/d11 -2.6080502 0.1028122 -25.3671384 0.0000000
Olaparib2 in GFP d11/d11 -0.4785519 0.1028122 -4.6546235 0.0000259
Olaparib3 in GFP d11/d11 0.1959850 0.1028122 1.9062433 0.0626155
Olaparib1: d11/d11 vs. h/d11 in GFP 1.1856592 0.1453983 8.1545579 0.0000000
Olaparib2: d11/d11 vs. h/d11 in GFP 0.1769563 0.1453983 1.2170450 0.2295372
Olaparib3: d11/d11 vs. h/d11 in GFP 0.1405672 0.1453983 0.9667731 0.3385035
Olaparib1: GFP vs. GFP-ALC1 in d11/d11 0.6030152 0.1453983 4.1473320 0.0001363
Olaparib2: GFP vs. GFP-ALC1 in d11/d11 -0.0403491 0.1453983 -0.2775073 0.7825824
Olaparib3: GFP vs. GFP-ALC1 in d11/d11 0.0452767 0.1453983 0.3113974 0.7568470
Olaparib1: d11/d11 vs. h/d11: GFP vs. GFP-ALC1 -0.0666424 0.2056243 -0.3240977 0.7472722
Olaparib2: d11/d11 vs. h/d11: GFP vs. GFP-ALC1 0.2061467 0.2056243 1.0025405 0.3211100
Olaparib3: d11/d11 vs. h/d11: GFP vs. GFP-ALC1 -0.3736504 0.2056243 -1.8171508 0.0754397
write.table(output, file = "Figure5H_Stats_Ref_d11_d11.txt", quote = F, sep = "\t", row.names = T, col.names = NA)

Anova

fit11a <- lm(NormCounts2 ~ poly(Olaparib,3)*BRCA*Alc1, data = dataset)
fit11b <- lm(NormCounts2 ~ poly(Olaparib,3)*BRCA+Alc1, data = dataset)

# anova table
anova(fit11a, fit11b)
## Analysis of Variance Table
## 
## Model 1: NormCounts2 ~ poly(Olaparib, 3) * BRCA * Alc1
## Model 2: NormCounts2 ~ poly(Olaparib, 3) * BRCA + Alc1
##   Res.Df     RSS Df Sum of Sq      F    Pr(>F)    
## 1     48 0.12684                                  
## 2     55 0.23516 -7  -0.10831 5.8554 6.031e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
fit11c <- lm(NormCounts2 ~ poly(Olaparib,3)*Alc1*BRCA, data = dataset)
fit11d <- lm(NormCounts2 ~ poly(Olaparib,3)*Alc1+BRCA, data = dataset)

# anova table
anova(fit11c, fit11d)
## Analysis of Variance Table
## 
## Model 1: NormCounts2 ~ poly(Olaparib, 3) * Alc1 * BRCA
## Model 2: NormCounts2 ~ poly(Olaparib, 3) * Alc1 + BRCA
##   Res.Df     RSS Df Sum of Sq     F    Pr(>F)    
## 1     48 0.12684                                 
## 2     55 0.50014 -7  -0.37329 20.18 2.527e-12 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1